1. Statement of the Technical Field
The present invention relates to the field of data modeling, and more particularly to the creation and installation of a database.
2. Description of the Related Art
Data represents a significant aspect of the conventional data processing application. A strong and well-architected data structure can facilitate the design of diverse processing, user interface, reporting and statistical analysis tools. Equally as significant, the business requirements of a data processing application dictate the purpose of the application. The most elegant and technologically advanced application will fail its user base if the application does not meet the specified business requirements. Logical data modeling addresses both important aspects of data processing application design.
Database creation and installation generally starts with logical data modeling, followed by physical design and installation. From an application point of view, the logical data model can include those business entities, their relationships, and processes as dictated by business policy and processes. From a database technology perspective, the logical data model is the database language specification of the objects defined within the database. That is, the logical data model defines entities in terms of database objects such as tables, views, columns, data types, constraints, triggers, access privileges, and the like. Importantly, the logical data model itself is not a database.
In comparison to the logical data model, the physical database design is the physical realization of the logical data model. The physical database design can include physical database specifications, for instance database size and location, data creation, updating, and loading details, and data access mechanisms. For example, container lists or drive specifications determine where the data can exist within the database, while page size and disk striping specifications determine how the data is to be inserted on disk. The physical characteristics also determine how system resources are to be used. For example, a buffer pool definition can specify how much memory is to be allocated by the database for data caching and retrieval.
Conventional software development tools have been created which can facilitate the creation both of a logical data model for a database, and for the translation of the logical data model into a physical database design. Many conventional software development tools further can generate database installation scripts for automating the installation of a physical database based upon a logical data model and a physical database design. Using more advanced data modeling tools, not only can the physical structuring of a database be established, but also embedded logic such as stored procedures and triggers further can be incorporated into the database.
Notably, the most advanced of software development tools configured for data modeling and database creation can generate installation scripts based upon the specification of a logical data model and a physical database schema. In this regard, these advanced software development tools can scale the installation of a single database from a single database server to a vast enterprise incorporating scores of database servers and server farms. Moreover, as the number of database designers increases in a data processing application design effort, advanced data modeling tools can coordinate the collaborative effort. Still, even the most advanced data modeling tools lack the functionality for generating installation scripts for more complex scenarios such as where multiple databases sharing similar physical database specifications are to be installed in one or multiple database servers.